import Vue from 'vue';
import {deepAssign} from '../utils/deep-assign';
import defaultMessages from './lang/zh-CN';

var proto = Vue.prototype;
var defineReactive = Vue.util.defineReactive;
defineReactive(proto, '$vantLang', 'zh-CN');
defineReactive(proto, '$vantMessages', {
    'zh-CN': defaultMessages
});
export default {
    messages: function messages() {
        return proto.$vantMessages[proto.$vantLang];
    },
    use: function use(lang, messages) {
        var _this$add;

        proto.$vantLang = lang;
        this.add((_this$add = {}, _this$add[lang] = messages, _this$add));
    },
    add: function add(messages) {
        if (messages === void 0) {
            messages = {};
        }

        deepAssign(proto.$vantMessages, messages);
    }
};